#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
//冒泡排序
void bubble_sort(int arr[], int sz)
{
	for (int i = 0; i < sz - 1; i++)
	{
		int j = 0;
		for (j = 0; j < sz - 1 - i; j++)
		{
			if (arr[j] < arr[j + 1])
			{
				int temp = arr[j];
				arr[j] = arr[j + 1];
				arr[j + 1] = temp;
			}
		}
	}
}
int main()
{
	int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
	//计算数组的长度
	int sz = sizeof(arr) / sizeof(arr[0]);
	bubble_sort(arr, sz);
	printf("%p\n", arr);
	printf("%p\n", &arr[0]);
	printf("%d\n", arr[0]);
	printf("%d\n", *arr);
	return 0;
}
////递归实现N的k次方
//double fun(int n, int k)
//{
//	if (k > 0)
//	{
//		return n * fun(n, k - 1);
//	}
//	else if (k == 0)
//		return 1.0;
//	else
//		return 1.0 / fun(n, -k);
//}
//int main()
//{
//	int n, k;
//	scanf("%d %d", &n, &k);
//	double p = fun(n, k);
//	printf("%lf", p);
//	return 0;
//}
//int digitsum(int n)
//{
//	if (n > 9)
//	{
//		int ret = n % 10;
//		return ret + digitsum(n / 10);
//	}
//	else
//		return n;
//}
//int main()
//{
//
//	int n = 0;
//	scanf("%d", &n);
//	int sum=digitsum(n);
//	printf("%d", sum);
//	return 0;
//}
////递归实现字符串逆序
//int lenth(char* arr)
//{
//	if (*arr == '\0')
//		return 0;
//	else
//		return 1 + lenth(arr + 1);
//}
//void reverse_string(char* arr)
//{
//	int left = 0;
//	int right = lenth(arr)-1;
//	char temp = *(arr + left);
//	*(arr + left) = *(arr + right);
//	*(arr + right) = '\0';
//	if(lenth(arr+1)>=2)
//		reverse_string(arr + 1);
//	*(arr + right) = temp;
//}
//int main()
//{
//	char arr[] = "abcdef";
//	reverse_string(arr);
//	printf("%s\n", arr);
//	return 0;
//}
//

////打印9*9乘法口诀表
//int main()
//{
//	int n = 0;
//	scanf("%d", &n);
//	for (int i = 1; i <= n; i++)
//	{
//		for (int j = 1; j <=i; j++)
//		{
//			printf("%2d*%d=%-3d  ",i,j, i * j);
//		}
//		printf("%\n");
//	}
//	return 0;
//}